#define  _CRT_SECURE_NO_WARNINGS


#include <stdio.h>

//int main()
//{
//	float f = 0;
//	float c = 0;
//
//	scanf("%f", &f);
//	c = 5 * (f - 32) / 9;
//	
//	printf("c=%0.2f\n", c);
//
//	return 0;
//}

//int main()
//{
//	int a = 0;
//	int b = 0;
//	int square1 = 0;
//	int square2 = 0;
//	int sum = 0;
//
//	scanf("%d %d", &a, &b);
//	square1 = a * a;
//	square2 = b * b;
//	sum = square1 + square2;
//
//
//	printf("%d\n", sum);
//
//	return 0;
//}

//int main()
//{
//	int a = 0;
//	int b = 0;
//
//	scanf("%d %d", &a, &b);
//
//	printf("%d", a*a+b*b);
//
//	return 0;
//}\

//int main()
//{
//	int r = 0;
//	double s = 0;
//
//	scanf("%d", &r);
//	s = 3.1415926 * r * r;
//
//	printf("%0.2lf\n", s);
//
//	return 0;
//}

//int main()
//{
//	int a = 0;
//	int b = 0;
//	int c = 0;
//	int s = 0;
//
//	scanf("%d %d", &a, &b);
//	c = (a + b) * 2;
//	s = a * b;
//
//	printf("C:%d\n", c);
//	printf("S:%d\n",s);
//
//	return 0;
//}

//int main()
//{
//	int a = 0;
//	int b = 0;
//	int c = 0;
//	int max = 0;
//
//	scanf("%d %d %d", &a, &b, &c);
//
//	if (a > b)
//	{
//		max = a;
//	}
//	else
//	{
//		max = b;
//	}
//	
//	if (c > max)
//	{
//		max = c;
//	}
//
//	printf("%d\n", max);
//
//	return 0;
//}

//int main()
//{
//	int x = 0;
//	int y = 0;
//
//	scanf("%d", &x);
//
//	if (x < 1)
//	{
//		printf("%d\n", x);
//	}
//	else if (x >= 1 && x < 10)
//	{
//		printf("%d\n", 2 * x - 1);
//	}
//	else if (x >= 10)
//	{
//		printf("%d\n", 3 * x - 11);
//	}
//	
//	return 0;
//}

//int main()
//{
//    int t, a, b, c;
//    
//    scanf("%d%d%d", &a, &b, &c);
//    if (a > b)
//    {
//        t = a; 
//        a = b;
//        b = t;
//    }
//    if (a > c)
//    {
//        t = a;
//        a = c;
//        c = t;
//    }
//    if (b > c)
//    {
//        t = b;
//        b = c;
//        c = t;
//    }
//    printf("%d %d %d ", a, b, c);
//    return 0;
//}

//int main()
//{
//	int a = 0;
//	int b = 0;
//	int c = 0;
//	int t = 0;
//
//	scanf("%d %d %d", &a, &b, &c);
//
//	if (a > b)
//	{
//		t = a;
//		a = b;
//		b = t;
//	}
//
//	if (a > c)
//	{
//		t = a;
//		a = c;
//		c = t;
//	}
//
//	if (b > c)
//	{
//		t = b;
//		b = c;
//		c = t;
//	}
//
//	printf("%d %d %d\n", a, b, c);
//
//	return 0;
//}

//int main()
//{
//	int a = 0;
//	
//	scanf("%d", &a);
//
//	if (a >= 90)
//		printf("%c\n", 'A');
//	else if (a >= 80 && a < 90)
//		printf("%c\n", 'B');
//	else if (a >= 70 && a < 80)
//		printf("%c\n", 'C');
//	else if (a >= 60 && a < 70)
//		printf("%c\n", 'D');
//	else
//		printf("%c\n", 'E');
//
//	return 0;
//}

#include <string.h>

int main()
{
	char arr[] = { 0 };
	int length = 0;
	int i = 0;

	scanf("%s", arr);
	length = strlen(arr);

	printf("%d\n", length);

	for (i = 0; i < length; i++)
	{
		printf("%c ", arr[i]);
	}

	printf("\n");

	for (i = length - 1; i >= 0; i--)
	{
		printf("%c", arr[i]);
	}

	printf("\n");
	
	return 0;
}